<template>
    <view>
        <van-loading class="loading" size="80" color="#ccc" ></van-loading>
        <view class="start">正在为您检查登录状态...</view>
    </view>
</template>
<script>
export default {
    data(){
        return{
            SessionKey: '',
            OpenId: '',
            nickName: null,
            avatarUrl: null,
            isCanUse: uni.getStorageSync('isCanUse')||true//默认为true
        }
    },
    methods: {
            //第一授权获取用户信息===》按钮触发
            wxGetUserInfo() {
                // let _this = this;
                uni.getUserInfo({
                    provider: 'weixin',
                    success: function(infoRes) {
                        let nickName = infoRes.userInfo.nickName; //昵称
                        let avatarUrl = infoRes.userInfo.avatarUrl; //头像
                        // try {
                        //     uni.setStorageSync('isCanUse', false);//记录是否第一次授权  false:表示不是第一次授权
                        //     _this.updateUserInfo();
                        // } catch (e) {}
                        getApp().globalData.userInfo[0].nickName = nickName
                        getApp().globalData.userInfo[0].avatarUrl = avatarUrl
                        // console.log(getApp().globalData.userInfo[0])
                    },
                    fail(res) {}
                });
                
                this.login()
            },　
                login() {//登录
                let _this = this;
                // uni.showLoading({
                //     title: '登录中...'
                // });
             
               // 1.wx获取登录用户code
                uni.login({
                    provider: 'weixin',
                    success: function(loginRes) {
                        let code = loginRes.code;
                        if (!_this.isCanUse) {
                            //非第一次授权获取用户信息
                            uni.getUserInfo({
                                provider: 'weixin',
                                success: function(infoRes) {
 　　　　　　　　　　　　　　　　　　　　　　//获取用户信息后向调用信息更新方法
                                    let nickName = infoRes.userInfo.nickName; //昵称
                                    let avatarUrl = infoRes.userInfo.avatarUrl; //头像
                                    // console.log(avatarUrl)
                                        // _this.updateUserInfo();//调用更新信息方法
                                        
                                }
                            });
                        }
                        //2.将用户登录code传递到后台置换用户SessionKey、OpenId等信息
                        uni.request({
                            url: 'http://47.108.197.149:8081/app/wxUser/checkLogin',
                            data: {
                                code: code,
                            },
                            method: 'POST',
                            // header: {
                            //     'content-type': 'application/json'
                            // },
                            success: (res) => {
                                if (res.data.code == 200) {  //如果数据库有此用户的opneid，那就直接进入主页
                                    uni.switchTab({
                                        url: '../Main/Main',
                                        fail:function(err){
                                            console.log(err)  
                                        }
                                    })
                                    getApp().globalData.userInfo[0].userId = res.data.user.id //存一下用户的userId
                                    getApp().globalData.userInfo[0].openId = res.data.user.openId //存一下用户的openid
                                    getApp().globalData.userInfo[0].inviteCode = res.data.user.code //存一下用户的openid
                                    // getApp().globalData.userInfo[0].address = res.data.user.address //存一下用户的openid
                                    //openId、或SessionKdy存储//隐藏loading
                                    uni.hideLoading();
                                }else{                      //如果数据库没有此用户的opneid，那就去登录授权页面
                                    uni.navigateTo({
                                        url: '../Login/Login',
                                        fail:function(err){
                                            console.log(err)  
                                        }
                                    })
                                }
                                
                            }
                        });
                    },
                });
            },
            ss(){  //测试方法
                uni.request({ 
                    url:'http://47.108.197.149:8081/app/goods/goodsList',
                    method:'POST',
                    header: {
                            'content-type': 'application/json'
                    },
                    success:(res) =>{
                    //    console.log(res)
                    }
                })
            }
         
        },
    onLoad(options){
        this.wxGetUserInfo() 
        // inviteCode = options.inviteCode
        // console.log(options)
    }
}
</script>
<style scoped>
.loading{
    display: flex;
    margin-top: 40%;
    justify-content: center;
}
.start{
    display: flex;
    margin-top: 20rpx;
    color: rgb(156, 154, 154);
    justify-content: center;
}
</style>